home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amnesia 8
/
Amnesia - Issue 08 (1992-05-31)(Eclipse).adf
/
text
/
Article38
< prev
next >
Wrap
Text File
|
1992-05-31
|
53KB
|
1,533 lines
General 2.1 Disk Layout Changes
Some changes were made to the Workbench disk layout in 2.1. There are a few
reasons for this:
- Need to accomodate localization
- Need to accomodate CrossDOS
- Attempt to simplify user's lifes
- Getting everything to fit on the disks
The changes include:
- The 2.1 system software will be shipped on FFS floppies. This is mainly to
increase available storage.
- There is now a Prefs drawer on the Extras disk. This is where all the
prefs editors are located. The Prefs drawer is maintained on the
Workbench disk only to store ENVARC:
- The Devs directory on Workbench now has an icon. The Monitors drawer
was moved inside of Devs. Devs/Printers and Devs/Keymaps acquired icons.
Finally, a new drawer called Devs/DOSDrivers also has an icon. Printer
drivers and keymaps all have icons now.
Devs/Monitors
Place where a user puts a monitor icon to enable it.
Devs/Printers
Place where a user puts a printer icon to make it available.
Devs/Keymaps
Place where a user puts a keymap icon to make it available.
Devs/DOSDrivers
Place where a user puts a DOS driver (mount file) icon to activate it.
Files that go in the DOSDrivers icons are very similar to mount lists,
but they have icons so WB users can manipulate them. See the discussion
of the C/Mount command below for more info.
- A Storage drawer was created on the Extras disk. It contains the same
four directories as in the Devs drawer. This is where things that are not
currently used are kept. To activate a monitor, the user is expected to
drag the desired monitor icon from Storage/Monitors to Devs/Monitors.
Same applies for printer drivers, keymaps and DOS drivers.
The ability to drag DOS driver icons means the Workbench user can now
control what device gets mounted in his system. This is important for
CrossDOS. By simply double-clicking on the PC0 icon, the user can
activate MS-DOS device unit 0. By dragging the PC0 icon from
Storage/DOSDrivers to Devs/DOSDrivers, the selection becomes permanent
and PC0: will be available upon every reboot.
=============================================================================
General 2.1 Improvements
- Most system programs with a GUI are now localized and can be operated in
multiple languages
- Many 2.1 programs support a PUBSCREEN tooltype or command-line option
which enables them to open on any public screen.
- Many 2.1 programs with a GUI understand CTRL-C signals sent to them and
quit
- Many 2.1 programs with a GUI listen for CTRL-F. When they receive this
signal, they activate their window, bring it to the front, and unzip it
if needed. CTRL-F is thus a sort of wake up call.
- 2.1 icons contain all the tooltypes their respective applications
understand. The tooltypes are commented out in the form:
(PUBSCREEN=<public screen name>)
The parenthesis causes the tooltypes to be overlooked by Workbench. The
data in angled brackets needs to be filled-in by the user.
- 2.1 commodities programs use ReadArgs() for command-line parsing.
=============================================================================
The following system files are no longer needed under 2.1 and are deleted by
the installation procedure.
- C/DiskDoctor
Removed for malpractice
- Devs/Keymaps/usa1
Present in ROM.
- Fonts/_bullet/if.ss
Replaced by Fonts/_bullet/if.uc
- System/AddMonitor
Functionality is now embedded in each monitor file directly.
- System/BindMonitor and WBStartup/Mode_Names
Naming modes is now done by the monitors themselves in combination with
IPrefs which handles localization of the names
- System/CLI.info
Redundant.
- System/DiskCopy.info
No need for an icon since the user can't double-click on this program.
- System/SetMap
The global keymap can now be selected from the Input prefs editor. The new
SetKeyboard command lets you set the keymap for the current console window.
- Tools/Commodities/IHelp
Functionality has been absorbed by FKey
=============================================================================
C/BindDrivers
- Got smaller
=============================================================================
C/CPU
- Added EXTERNALCACHE, NOEXTERNALCACHE, COPYBACK, and NOCOPYBACK options
needed for 68040 support.
=============================================================================
C/IconX
- Got smaller
- Scripts started by IconX now inherit WB's path
- There is now a STACK tooltype that lets the stack of the script be
specified
- There is now a USERSHELL tooltype. Setting "USERSHELL=YES" will cause
the current user shell to be used for the script instead of the boot
shell
- Default window spec now includes /AUTO to avoid mostly useless windows from
opening
- Corrected DELAY tooltype. The value was actually being used directly
for a Delay() call and is now multiplied by TICKS_PER_SECOND (50)
before use.
=============================================================================
C/Info
- Now knows about DOS\2, DOS\3 and CrossDOS disk types
=============================================================================
C/Install
- Can now use CHECK option on write-protected disks
- Now supports DOS\2 and DOS\3 disk types
- FFS command-line option is now ignored by the program
- Now fails when trying to install a device without 512 bytes/sector. Prints
an error message to that effect.
- Now gives a meaningful error message when a disk can't be read or written
to. It used to return with "no disk present" as an error
=============================================================================
C/IPrefs
- Localized
- Now understands Locale, Keymap, CrossDOS and Sound preferences
- Now uses iffparse.library to interpret its IFF files
- Keeps diskfont.library and iffparse.library closed when they
are not in use allowing them to be expunged
- Can now handle multiple IFF chunks within an IFF file. This means that
a single IFF PREF file can contain preferences for many different
elements.
- Clearer message when IPrefs wants to reset the WB display
- Knows about the new PUNT (Printer Unit) chunk saved by the new Printer
Prefs
- Knows about the unit # specification for multi-serial cards
- Now reads and processes the new font.prefs file and ignores the old
sysfont.prefs and screenfont.prefs
- Is much more picky about when the Workbench screen must be reset
- Knows about monitor mode names. When a changes to the Locale
preferences occur, IPrefs now reads the sys/monitors.catalog
catalog file and updates the name of all available monitors so they
appear in the correct language.
- Handles 256 colors palette prefs files correctly. It had a fixed
maximum of 16 colors.
=============================================================================
C/LoadWB
- If the ROM is the final 2.04 ROM, it will do a magic patch that
will fix the "Rename Error gets stuck" problem.
- If the ROM is the final 2.04 ROM, it will do a magic patch that
localizes workbench to the current default locale. Since this
is done at LoadWB time, it will remain in effect until you quit
workbench and start again. If locale.library is not available, it
will not localize workbench.
=============================================================================
C/Mount
- Rewritten from BCPL to C. Another one bites the dust!!
- Localized
- Has much better error reporting, including the filename, line and column
number of where errors in MountLists occur.
- Now uses ROM calls to access the DOS device list
- Can be run from Workbench. This requires new-style MountLists of
the form:
/* Aux-Handler mount entry under 2.1 */
Handler = L:Aux-Handler
Stacksize = 1000
Priority = 5
That is, the difference with old style MountLists are as follows:
- Only a single device can be defined per file
- The name of the device is not specified in the file and is instead
the same as the name of the file
- The # at the end of the entry can be ommited.
This change will enable us to allow easy installation and control of
mountable devices from the Workbench by simply dragging and clicking icons.
- Template is now:
"DEVICE/M,FROM/K"
DEVICE/M lets multiple devices be mounted in one invocation. Different
things are done depending whether the a device name argument ends with a
colon. For example:
Mount PIPE:
This will look for the file "DEVS:DOSDrivers/PIPE" and will process
it if found. This is a new style mount file that doesn't contain
the name of the device within the mount file. If the mount file
is processed successfully, the tooltypes for
"DEVS:DOSDrivers/PIPE.info" are then processed and override any
settings from the mount file. This is new behavior.
If "DEVS:DOSDrivers/PIPE" doesn't exist, an attempt is then made
to find a "PIPE:" entry in "DEVS:MountList". This is the compatible
fall-back behavior.
Mount PIPE
When there is no colon at the end of a device name argument, the
name is taken as the filename of the mount file to process.
This filename can contain wildcards so something like the following
is possible: Mount DEVS:DOSDrivers/~(#?.info). This is new behavior.
Mount PIPE FROM <mountlist>
Mount PIPE: FROM <mountlist>
This will scan for a "PIPE:" entry in <mountlist>. This is compatible
behavior.
- String arguments can now be enclosed in double quotes which lets spaces
be included such as:
Handler = "Boot HD:L/Speak-Handler"
This is handy for mount list entries generated automatically
- Added tooltype processing, any keyword that can be put in a mountlist can
also be put as a tooltype entry. The tooltype data *overides* the
data in the mountlist file itself.
- Added ACTIVATE as a synonym to the MOUNT keyword. This is mainly meant
to eliminate the confusion between the Mount command and the MOUNT
keyword. Also, since this is likely to be one of the most common
tooltypes, it makes sense to give it a more meaningful name.
- When mounting a file system, Mount now scans the file system resource
list for entries having the same dos type. If an entry is found, that
file system is used instead of attempting to load a new one from disk.
To force a file system to be loaded from disk even though a suitable
entry is in the resource list, the FORCELOAD keyword has been added:
FORCELOAD = 0; /* default, check the resource list before the disk */
FORCELOAD = 1; /* always load from disk */
Using a file system from the resource list avoids having multiple copies
of the file system code in memory at any one time. This will make
CrossDOS become much less memory hungry.
- No longer checks for absence of L:FastFileSystem, this was now
redundant due to the scanning of the file system resource list.
- The Unit field of the FileSysStartupMsg can now contain a C pointer to a
C string. The Startup field provided the ability for a handler to get
a string, but it was not possible for a file system to get a string as
parameter. The Unit field makes it possible. So if the Unit keyword is
defined as:
Unit = "blah blah"
then memory is allocated to hold the string and the fssm_Unit field
points to it. The pointer is a CPTR and the string is a regular C string.
=============================================================================
C/SetKeyboard
New command which replaces System/SetMap. Can only be run from the shell.
Template is "KEYMAP/A". The command sets the keymap for the current console
window. Keymaps are searched for in the KEYMAPS: assign list.
=============================================================================
C/SetPatch
- Fixes a problem with SetPatch always playing with the caches
It now just turns on the data cache and will report this as one of
the patches it installs.
- Added code needed to support the loading/opening of the 68040
support library. (68040.library)
- Fixed BURST mode
- Added patch for Intuition IAddress bug
- Added patch to fix up the line-a exception which is munged at
boot time. This patch will cause an enforcer hit if you run
Enforcer before SetPatch is run the first time.
- Added the SetRGB4() and LoadRGB4() interrupt patches
- Added the moving of the CIA handler priority to 0 if the
priority is lower that 0.
- Patches console.device BeginIO() such that CMD_CLEAR now works, and no
longer trashes memory.
- Added a patch for the Display Database for V37.175 kickstart.
What this does is catch any routine in graphics that could have
caused a dynamic unpacking of the database and check if the
dynamic unpacking was about to happen. If it was, it would fail
the routine rather than call it since the monitor was not yet
added to the system. This fixes the problem where a dynamic
unpacking will cause the system to crash in a very bad way.
It also makes the monitor system more consistant.
=============================================================================
Devs/mfm.device
New device in support of CrossDOS. Allows Amiga floppy drives to read PC-format
disk. Interface is similar to trackdisk.device
=============================================================================
Devs/postscript_init.ps
New file needed by the PostScript printer driver.
=============================================================================
Devs/printer.device
- Localized
- Now uses EasyRequest() instead of AutoRequest()
- Preferences.i/h now has fields in it for the printer.device
which can be used to specify a device name, and unit number.
This is needed for the Printer prefs's UNIT option and lets the
printer.device output to any port of a multi-serial card, or
even to any other .device (although we don't have a UI to let
the user do this yet)
- Looks for the printer drivers in the PRINTERS: assign list first, then in
DEVS:printers.
- For parallel printers, the requester routines do the following:
If the message is "Make printer on-line", the requester will go
away automatically if the printer is put back on-line.
If the message is "Out of paper", the requester will go away if
automatically if paper is installed and the printer is put back
on-line.
=============================================================================
L/CrossDOSFileSystem
CrossDOS file system allowing AmigaDOS to read/write PC-format disks.
=============================================================================
L/FileSystem_Trans/#?
CrossDOS translation tables. These serve to determine how 8-bit ASCII is mapped
between Amiga and PC file systems. A listing of this directory in shown in
the CrossDOS preferences program.
=============================================================================
Prefs/#?
All system prefs editors share as many of the following new features as
pertinent:
- All prefs editors are localized
- Prefs editor windows are now made into AppWindows. That is, you can
drop prefs file icons on them.
- New PUBSCREEN tooltype or command-line argument to bring up the editors on
any public screen.
- Last menu was changed from "Options/Save Icons?" to
"Settings/Create Icons?" to match style guide.
- New tooltype "CREATEICONS" which can be set to YES or NO.
- The default state of the "Settings/Create Icons?" option is set to TRUE
when the prefs editor is run from Workbench, and FALSE when it is run from
the shell.
- Uses ASL's new automatic icon filtering feature as well as the new
ASLFR_SleepWindow tag which puts the calling window to sleep when a
file requester is opened.
- File requester's initial position is now set to be relative to
that of the prefs editor's window
- No longer resets file req path to ENV:Sys/Presets between calls to ASL
- Unlike 2.04, now parses tooltypes in the Tool icons in addition to those
from Project icons.
- Now does a ScreenToFront() to the screen on which the prefs editor
is running when starting up.
=============================================================================
Prefs/CrossDOS
New preferences editor that lets you control three parameters for every
CrossDOS device currently mounted.
The CrossDOS devices listview lets you pick the device to work on.
The Text Filtering checkbox lets you specify whether CrossDOS should
filter text files
The Text Translation checkbox lets you specify whether CrossDOS should
translate ASCII characters >127
The Translation Types listview lets you choose which type of translation
to apply whenever the Text Translation checkbox is selected
=============================================================================
Prefs/Font
- Substantially different UI using asl.library's font requester.
=============================================================================
Prefs/Input
- Supports keymap selection. Looks for keymaps in the KEYMAPS: assign list.
- Changed how all slider values are displayed, no longer are these
in fractions of a second (got too complicated to localize).
- Improved "Test Double-Click" and "Show Double-Click" handling
=============================================================================
Prefs/Locale
New preferences editor that lets you choose in which language to operate the
system. This is the user's control over system localization.
=============================================================================
Prefs/Overscan
- No longer uses menus in the edit screen, and instead has a pair of
Use/Cancel gadgets
- Added a real-time display of the current size and position as the overscan
areas are being edited
- Changed "Standard Overscan" to "Graphics Overscan" which matches ASL
ScreenMode requester terminology
- The default view position and preferred mode for editing now come
from the graphics database, instead of being coded into Overscan.
- Handles monitor types that are unknown to it.
- On the edit screen, only the active handle remains visible during
dragging. This is much faster, which makes a big difference on slower
processors.
- On the edit screen, the menu button now cancels a sizing/moving
operation.
- On the edit screen, fixed mouse-queue problems (no longer set
mouse-queue to 1). Also, for MOUSEMOVEs, I now grab the mouse-coords
from the window instead of the message, to be most up-to-date.
- On the edit screen, the unusable area (outside MaxOScan) is now
completely black, instead of part black and part gray. As a
side-effect, the Overscan editor can no longer use the first two
Workbench colors for its edit screen.
- Removed code to deal with unnamed monitors. Unnamed monitors are simply
not displayed
- Now capitalizes the first letter of the monitor names on the display,
and explicity capitalizes the words "NTSC" and "PAL". Monitor names are
no longer displayed with their ".monitor" extensions.
- Overscan editing screen now has a second bit-plane whenever a
genlocked system is being used. This lets the border around the
edit area be see through, while everything within the edit area to
be opaque.
- Now uses the screen's rastport for rendering when editing an overscan
region. This makes the rendering much faster
=============================================================================
Prefs/Palette
- Supports 8-bit color guns
- Made changes to allow 256 colors to be edited. This includes making
the window larger when many colors are to be displayed.
- Keeps the Workbench screen locked until it is done playing with its
colors, fixing a potentially dangerous bug
=============================================================================
Prefs/Pointer
- Added clipboard Cut, Copy and Paste of ILBM's.
- Added Erase and Undo.
=============================================================================
Prefs/Printer
- Added UNIT command-line option and tooltype which causes an extra gadget
to be displayed to let the user select which device unit the printer
will send its output to.
- Now outputs a PUNT (Printer Unit) chunk in the printer prefs file
- Now scans for printers in the PRINTERS: assign list instead of in
DEVS:Printers
=============================================================================
Prefs/PrinterGfx
- Now has the "Options/Use Metric System" menu option, with its initial
setting determined by the current locale (default is off)
- Ghosts more unavailable options than previous versions
=============================================================================
Prefs/PrinterPS
- New PostScript printer driver preferences enabling control of numerous
features of PostScript printers. Here's a brief summary of most of the
controls:
Driver Mode
-----------
Lets you select between "PostScript" or "Pass Through". The "PostScript" mode
will cause the driver to convert any text output sent to it to "PostScript"
and send the results over to the printer. The "Pass Through" option will force
the driver to leave the data alone and send it directly to the printer. The
"Pass Through" option lets programs that output PostScript directly function
correctly by sending their PostScript code directly to the printer and not
treating it as a text file.
Copies
------
This specifies the number of copies of each page to print, from 1 to 99.
Paper Format
------------
Lets the user select between "U.S. Letter", "U.S. Legal", "DIN A4" and
"Custom". This defines the size of the paper being used. Clicking on this
gadget sets the values in the "Paper Width" and "Paper Height" cycle gadget to
match what the format dictates.
Paper Width and Paper Height
----------------------------
These let you specify the exact paper dimensions being used. These gadgets are
ghosted unless the "Paper Format" gadget is set to "Custom".
Horizontal DPI and Vertical DPI
-------------------------------
Lets you specify the dots per inch to use in the printout. The driver will
assume that DPI for all of its dithering and other processing.
Panel Cycle Gadget
------------------
This lets you select which of the four additional option panel is currently
displayed. The four panels are "Text Options", "Text Dimensions", "Graphics
Options", and "Graphics Dimensions". The panel selected determines which
of the following gadgets is displayed. The reason to use gadget panels is due
to lack of space in a 640x200 resolution display.
Font
----
This lets you select which font to use in printout. These are built-in printer
fonts and are used whenever text is sent to the printer.
Pitch
-----
Lets you select either "Normal", "Compressed", or "Expanded" print faces.
Orientation
-----------
Lets you select between "Portrait" or "Landscape" printing. Landscape printing
is useful for things like envelopes.
Tab
---
Lets you specify how to handle tabs in the printed file. The available
selections are "4 characters", "8 characters", "1/4 Inch", "1/2 Inch", and
"1 Inch". The inch settings are useful when printing with a proportional
font.
Margin Gadgets
--------------
Lets you specify all four margins for text printing. The values entered are
relative to the left/top edge of the paper as well as to the paper's width
and height values specified previously.
Font Point Size
---------------
Lets you specify the size of the font to use whenever text is sent to the
printer.
Line Leading
------------
Lets you specify the amount of leading betweens printed lines of text. Leading
is the distance between two adjacent lines.
Lines Per Inch
--------------
This text display area shows the number of lines per inch which is calculated
based on the values of the "Font Point Size" and "Line Leading".
Lines Per Page
--------------
This text display area shows the number of lines per inch which is calculated
based on the values of the "Font Point Size", "Line Leading", "Paper Height",
"Top Margin", and "Bottom Margin".
Edge Dimension Gadgets
----------------------
Similar to the four Margin gadgets, but used for graphics printing.
Shading
-------
Lets you select between "Black & White", "Grey Scale", and "Color".
Aspect
------
When printing graphics, this lets you specify whether the picture should be
printed normally, or sideways. This is the first operation done on a graphics,
it happens before the scaling.
Scaling Type
------------
Lets you select one of 7 scaling types. All types control how the picture
is printed within the user specified printing region.
1 - No scaling. This prints the picture as is. The picture may be clipped on
the right and bottom edges to fit within the print region specified.
2 - Aspect preserving scale with horizontal bias. This makes the horizontal
dimension as wide as the print region, and scales the vertical dimension
by whatever is needed to preserve the aspect ratio. The vertical dimension
is clipped to the print region if it gets too tall.
3 - Aspect preserving scale with vertical bias. This makes the vertical
dimension as tall as the print region, and scales the horizontal dimension
by whatever is needed to preserve the aspect ratio. The horizontal dimension
is clipped to the print region if it gets too wide.
4 - Aspect preserving maximum scale. This makes the picture as big as
possible while ensuring it fits in the print region and preserves its
aspect ratio.
5 - Aspect insensitive scale with no bias. This makes the picture take
up the emtire print region in both dimensions and will distort the aspect
ratio if needed.
6 - Aspect insensitive scale with horizontal bias. This makes the horizontal
dimension as wide as the print region, and scales the vertical dimension
by whatever is needed to preserve the aspect ratio, or until the vertical
dimension gets as tall as the print region. The difference between this
type and type #2 is that the vertical dimension is made to always fit
within the print region instead of being clipped.
7 - Aspect insensitive scale with vertical bias. This makes the vertical
dimension as tall as the print region, and scales the horizontal dimension
by whatever is needed to preserve the aspect ratio, or until the horizontal
dimension gets as wide as the print region. The difference between this
type and type #3 is that the horizontal dimension is made to always fit
within the print region instead of being clipped.
Scaling Math
------------
Determines whether "Integer" or "Fractional" math is to be used during scaling
operations.
Centering
---------
This lets you specify no centering, horizontal centering, vertical centering,
or both horizontal and vertical. The centering operation is performed last
in the printing process, after the scaling.
Scaling Samples
---------------
These show a sample picture being scaled to various target sizes. Selecting
different scaling types changes the samples to reflect what would happen on
the printed page.
=============================================================================
Prefs/Serial
- Added UNIT command-line option and tooltype to support the A2232 board.
When this option is specified, an additional gadget is added to the window
to let you set the default A2232 unit. This makes the old A2232_Preferences
program obsolete.
=============================================================================
Prefs/ScreenMode
- Has better code to name unnamed modes. The mode is now always
preceded by the monitor name, just like the ASL screen mode requester
=============================================================================
Prefs/Sound
New preferences editor that lets you control what happens when a
DisplayBeep() function call is made. Lets you replace the screen flash by an
audio beep or an IFF sampled sound.
=============================================================================
Prefs/Time
- Now has a SAVE command-line option. This causes the program to just
copy the current system time to the battery clock
- It will adapt its display to start weeks on the days indicated in the
current locale.
- Has a localized time display region to enhance useability of the
Hours and Minutes sliders
- Calendar area looks and feels better
- Has a Project menu with a single Quit item
=============================================================================
Prefs/WBPattern
- Added clipboard Cut, Copy and Paste of ILBM's.
- New preset patterns
=============================================================================
Libs/asl.library
- Rewritten from assembly to C
- Integrated the new ScreenMode requester
- Localized all requesters. By default, they will use the system's current
locale. An application can also override this and pass in its own locale
- All requesters are now font-sensitive. By default, the
screen's current font is used. An application can override this and provide
its own font
- All requesters can now use a screen pointer, a public screen name, or a
window pointer in order to determine on which screen to open.
- All requesters can now open an invisible Intuition requester and put up a
busy pointer in the calling application's window, effectively putting that
window to sleep until the requester is satisfied.
- New <libraries/asl.h> and <libraries/asl.i> files with new
consistent names for everything
- The file requester now uses correct highlighting method and does
multiselect in a manner consistent with Workbench (you need to hold
down the shift key to do multiselect)
- The file requester now displays file sizes, date and time for files.
The volume display shows the volume name, device name, number of %
used, Ks free and Ks used (just like a Workbench volume window)
- File requester now lets you delete files by selecting the "Delete" menu
item.
- File requester is between 2 and 7 times faster at loading a directory
listing
- File requester is now an AppWindow. Drop any file on it, and the path
of that file goes in the Drawer gadget, while its name lands in the
File gadget.
- When sizing the file requester taller, if viewing the end of the list,
the list of names now moves down to fill-in the newly exposed area.
Otherwise, the prop gadget is in a semi-legal state.
- Font requester now does caching of the font list. That means it will
display the lists of fonts many times faster than previously.
- There are many new options available for better program control of the
requesters, see asl.doc for more info.
=============================================================================
Libs/bullet.library
- New Compugraphic outline font engine. See bullet.doc for more info.
=============================================================================
Libs/commodities.library
- Got much smaller and much faster
- Consumes less run-time memory. Fragments memory much less. Flushes unused
memory when a memory panic occurs
- No longer attaches message ports to the public port list
- Now only attaches its input handler if commodities objects actually
exist. This lets applications call useful functions in the library
without causing an input handler to be added
- Fixed reentrancy problems in ParseIX()
- Fixed bug with the library freeing signal bits of the wrong task
on exit, resulting in a potentially dangerous situation
- Several miscellaneous bugs were fixed
- Added a new function: MatchIX(). This function was internal, and
was just made available to applications. It matches an input event to
a commodity input expression. See commodities.doc for more info.
- Fixed several low-memory Enforcer/MungWall bugs
- SetCxObjPri() now returns the previous priority of the object
- Fixed incorrect routing of events by translator objects. The translated
events would skip the remainder of the input network instead of being
inserted midstream like the docs described
- Added warning in autodoc concerning the fact translator objects
insert their translation list in reverse order than what you ask them.
This bug can't be fixed for compatibility
- Added <rawmouse> code strings. This enables the actual use of events of
type rawmouse.
MOUSE_LEFTPRESS
MOUSE_MIDDLEPRESS
MOUSE_RIGHTPRESS
These are the names to describe the mouse button presses. Not to be
confused with mouse button qualifiers. Example usage would be to specify
as CX_POPKEY sequence for a commodity:
CX_POPKEY=rawmouse mouse_middlepress
The above would cause the commodity to open its window whenever the middle
mouse button is depressed.
- It is now illegal to specify <rawkey> codes for non-rawkey events. The
error was not being caught.
Synonyms were added for event qualifiers. They used to have programmer-level
names, now the synonyms offer something more consistent and useable to the
normal user (as opposed to us abnormal programmer-types :-) These qualifiers
can be specified in mixed-case. The possible qualifiers are:
Original New Synonyms
-------- ------------
LCOMMAND LEFT_COMMAND, LAMIGA, LEFT_AMIGA
RCOMMAND RIGHT_COMMAND, RAMIGA, RIGHT_AMIGA
LSHIFT LEFT_SHIFT
RSHIFT RIGHT_SHIFT
LALT LEFT_ALT
RALT RIGHT_ALT
CAPSLOCK CAPS_LOCK
CONTROL CTRL
NUMERICPAD NUMERIC_PAD, NUMPAD, NUM_PAD
LBUTTON LEFTBUTTON, LEFT_BUTTON
MIDBUTTON MBUTTON, MIDDLEBUTTON, MIDDLE_BUTTON
RBUTTON RIGHTBUTTON, RIGHT_BUTTON
RELATIVEMOUSE
REPEAT
ALT, SHIFT and CAPS work as before.
Synonyms were added for keyboard sequences. Support was also added for the
extended Amiga keyboard. The possible keyboard sequences are:
BACKSPACE
BREAK
COMMA
DOWN, CURSOR_DOWN
LEFT, CURSOR_LEFT
RIGHT, CURSOR_RIGHT
UP, CURSOR_UP
DEL, DELETE
END
ENTER
ESC, ESCAPE
F1..F12
HELP
HOME
INSERT
PAGE_DOWN
PAGE_UP
PAUSE
RETURN
SPACE, SPACEBAR
TAB
=============================================================================
Libs/diskfont.library
- New version supporting external font engines
- Text() routine in graphics doesn't handle BoldSmear properly, so
made the scale font routines have a maximum bold smear of 16 when
graphics.library <V39.
=============================================================================
Libs/locale.library
New library that provides the core of system localization. See locale.doc
for more info.
=============================================================================
Libs/mathieeedoubbas.library
- Fixes the DPFix() routine which was trashing d3 under certain
input values.
=============================================================================
Locale/Countries/#?
Locale country information files. Used by the Locale preferences editor.
=============================================================================
Locale/Catalogs/#?
Locale language catalogs. Contains the text of localized applications in a
series of different languages. These are managed by locale.library
=============================================================================
Locale/Languages/#?
Locale language drivers. There is one language driver for every language
supported in the system. These are managed by locale.library and the Locale
preferences.
=============================================================================
Storage/Keymaps/f
- The numeric keys (not the keypad) were made capsable.
=============================================================================
Storage/Monitors/#?
These replace the V37 monitors, and render AddMonitor and BindMonitor obsolete.
These are true executables as opposed to the V37 ones.
NTSC
PAL
Multiscan
A2024
Euro36 - 36Hz refresh rate
Euro72 - 72Hz refresh rate
Super72 - 72Hz refresh rate higher res
=============================================================================
Storage/Printers/#?
- All drivers now support A4 paper sizes
- PostScript
New PostScript printer driver. See PrinterPS prefs editor for control
- CBM_MPS1000
A bug fix - the sequences for elite, and compressed were changed
post 1.2, and have been broken since then.
- EpsonX and EpsonQ
A bug fix: upper-case-I-acute-accent was being printed as grave.
- HP_LaserJet
Minor change - 60 second timeout for 300 DPI graphics (30 seconds
otherwise) - this is a common complaint; the driver times out too soon
at 300 DPI.
- ColorMaster
Removed wayward kprintf from render.c file.
- HP_DeskJet
This is a new and improved version of the driver. The old one will still be
included on Workbench disks as HP_DeskJetOld.
The old HP_Deskjet driver only supported the B&W HP_Deskjet
printers.
The new HP_Deskjet driver also supports the new (and extremely popular)
HP_500C color deskjet printer. This is a 300 DPI color ink printer
that you can get for street price of $749. By far, the best color
quality for the price.
In addition to supporting color graphic dumps on the HP_500C,
the driver supports (via DENSITY) the various shingling (??) modes
available on the 500C, and provides color and lightness correction
via THRESHOLD (a non-standard use of the THRESHOLD gadget).
If THRESHOLD is set to 1, no corrections are made. This setting is
required when printing directly from any package which does its own
enhanced dithering (such as Art Department Pro).
When printing with software that uses standard Amiga printer
device color printing, the THRESHOLD gadget can lighten the
output. Settings from 2 through 15 provide succesively lighter
output. When printing in gray scale, there is just one fixed correction.
THRESHOILD 1 will apply no correction, and any other setting will
apply the fixed lightening correction.
- CanonBJ10 35.4
New driver
=============================================================================
System/DiskCopy
- Got smaller
- Localized
- Hitting CTRL-C at the startup prompt is now sufficient to stop the
copy operation, no longer need to enter CTRL-C followed by RETURN
- Now uses ROM calls to scan the dos device list
- Uses EasyRequest() instead of AutoRequest() for better looking requesters
- Now has a GUI when running from WB with a fuel gauge and a Stop gadget
which looks identical to the Format GUI
- When on a partition with > 100 cylinders, the fuel gauge and cylinder
counts are now only updated every 10 cylinders. Partitions with more than
1000 cylimders are only updated every 50. Makes HD copying much faster
=============================================================================
System/Format
- Got smaller
- Localized
- Does better sniffing of the dos type for devices in support of CrossDOS
- Hitting CTRL-C at the startup prompt is now sufficient to stop the
format operation, no longer need to enter CTRL-C followed by RETURN
- The message displayed when formatting from the shell now mentions the
fact that hitting CTRL-C aborts the operation.
- Names its disks "BAD\0" when formatting so that workbench will show them
as "DF0:????" if the format operation fails, instead of "DF0:COPY"
- Now uses ROM calls to scan the dos device list
- No longer has a built-in trashcan image, always uses the one provided
by icon.library
- Uses EasyRequest() instead of AutoRequest() for better looking requesters
- Template from the shell is now:
DEVICE=DRIVE/K/A,NAME/K/A,OFS/S,FFS/S,INTL=INTERNATIONAL/S,
NOINTL=NOINTERNATIONAL/S,NOICONS/S,QUICK/S
DEVICE was added as a synonum for DRIVE, since this is the word used
elsewhere in the system ("Please insert <blah> in device DF0" for example)
The INTL or INTERNATIONAL options let you specify international file
system (DOS\2 or DOS\3)
The OFS option forces the use of OFS on the disk. This is for
devices which have FFS as default. The NOINTL option
serves the same purpose for the international mode operation.
So, specifying neither OFS or FFS will give you the default FS for
the device. OFS will always give you OFS, and FFS will always give you
FFS. Same logic applies for INTL/NOINTL. None of these switches
do anything on devices of other dos types, like CrossDOS for example.
- Now has a GUI when run from WB:
The "Current Information" section shows the device name to be formatted,
the name of the volume in this device (if any), the capacity of
the device, and the percentage of use. This information is updated if
disks are inserted or removed while the window is up.
The "New Volume Name" text gadget lets you specify the name for the
volume after format.
The "Put Trashcan" checkbox gadget lets you specify whether to put a
trashcan on the formatted disk.
The "Fast File System" gadget lets you specify whether to use FFS on the
volume.
The "International Mode" gadget lets you specify whether to format using
the international FS or not (DOS\2 and DOS\3)
The "Format" gadget starts the formatting.
The "Quick Format" gadget starts the formatting in quick mode (root block
formatting only)
The "Cancel" gadget cancels the operation
The "Fast File System" and "International Mode" gadgets are only
displayed when formatting AmigaDOS disks. So for something like
CrossDOS, these two options are not available.
After selecting "Format" or "Quick Format", a requester appears
asking for confirmation. The requester lists the name of the device
about to be formatted, or the name of the volume on this device if
available, as well as the capacity of the device, and its current
percentage of use.
After selecting "Format" in the above requester, two things may
happen. If the device being formatted is smaller than 3M in size, the
formatting begins immediately. If the device is larger, then another
different confirmation requester appears. Clicking "Format" on this
requester will actually start the formatting. The reason for this
second requester is for added protection against formatting your hard
drive.
During the formatting process, a fuel gauge is displayed showing
the progress of the formatting. A "Stop" gadget is also present to let
you abort the operation.
Once the formatting complete, a message saying "Initializing disk..." is
displayed for a few seconds, and the window closes.
- Now brings up a list of available devices when the Format icon is
double-clicked without having a disk selected. This allows us to format
disks that don't show up on Workbench such as unformatted CrossDOS disks.
- When on a partition with > 100 cylinders, the fuel gauge and cylinder
counts are now only updated every 10 cylinders. Partitions with more than
1000 cylimders are only updated every 50. Makes HD formatting much faster
=============================================================================
System/InitPrinter
- Got smaller
=============================================================================
System/NoFastMem
- Got smaller
- Now patches AllocVec()
=============================================================================
Tools/Calculator
- Localized
- Got smaller
- Now is font-sensitive
- Now uses gadtools.library instead of custom 3D look
- No longer uses console.device for number input and output, which also
means it no longer adds an unnamed console message port to the public port
list
- Now uses the Amiga character set's multiply and divide symbols to
represent these operations instead of * and /
- Added more keyboard shortcuts for gadgets. The following are supported:
0..9 for the number gadgets
+ for addition
- for substraction
*, x, X or ALT-X for multiplication (exact keystrokes depend on keymap) / or SHIFT-ALT-X for division (exact keystrokes depend on keymap)
= or RETURN/ENTER for result
. for the decimal point (also depends on locale)
s or S or ALT-Z for unary minus (the +/-) (S for Sign)
BACKSPACE to delete the last char entered (like the <- key)
DEL or A to clear all (CA key)
E to clear the entry (CE key)
CTRL-C or ESC to quit
- Added menus to the program, including an Edit menu which lets you
cut and copy the current number to the clipboard, as well as paste
numbers into the calculator. In fact, you can paste more than numbers!
That is, if the clipboard contains "1+2+3+4=" and you paste this in
the calculator, the expression is evaluated and the result is displayed
- Added a Calculator Tape window to display data as it is being processed
- Added the PUBSCREEN command-line option or tooltype entry that lets a
public screen name be specified
- Added the TAPE command-line option or tooltype entry that lets you
specify the name of the console to open when opening the Calculator
Tape window
=============================================================================
Tools/Commodities/AutoPoint
- Localized
- Much smaller
- Consumes much less CPU time when its just sitting waiting in the input
stream
- Uses ReadArgs() to parse command-line options. Template is:
CX_PRIORITY/N/K
=============================================================================
Tools/Commodities/Blanker
- Localized
- Smaller
- Consumes much less CPU time when its just sitting waiting in the input
stream
- Does optional splines and color cycling
- Uses ReadArgs() to parse command-line options. Template is:
CX_PRIORITY/N/K,CX_POPKEY/K,CX_POPUP/K,SECONDS/N/K,CYCLECOLORS/K,
ANIMATION/K:
SECONDS takes the number of seconds before blanking. CYCLECOLORS
takes "YES" or "NO" to set color cycling. ANIMATION takes "YES"
or "NO" to do splines or not.
- Tooltypes exist that match the command-line template
- Sends its blanking screen to the front of all screens whenever the blanking
interval expires. This guarantees the screen is blank even if some
applications open some screens by themselves.
- Now calls Wait() if the user asked for no animation and no color cycling,
instead of doing an almost-busy-loop
- Correctly closes the blanking screen when asked to quit while the screen
is blanked.
=============================================================================
Tools/Commodities/ClickToFront
- Localized
- Much smaller
- Consumes much less CPU time when its just sitting waiting in the input
stream
- Uses ReadArgs() to parse command-line options. Template is:
CX_PRIORITY/N/K,QUALIFIER/K
=============================================================================
Tools/Commodities/Exchange
- Localized
- Much smaller
- Has a new more easily understood and more standard interface
- Uses ReadArgs() to parse command-line options. Template is:
CX_PRIORITY/N/K,CX_POPKEY/K,CX_POPUP/K
=============================================================================
Tools/Commodities/FKey
- Localized
- Much smaller
- Has much greater functionality:
FKey used to let you assign strings to function keys. This new
FKey lets you assign any of 8 commands to any key sequence you
can enter.
The "Defined Keys" scrolling list shows all currently defined key
sequences.
The "New Key" and "Delete Key" gadgets lets you add and remove key
sequences.
The "Command" cycle gadget lets you pick a command for the current key
sequence. The possible commands are:
Cycle Windows
This does like the IHelp CYCLE function
Cycle Screens
This does like the IHelp CYCLESCREEN function
Enlarge Window
This does like the IHelp MAKEBIG function
Shrink Window
This does like the IHelp MAKESMALL function
Toggle Window Size
This does like the IHelp ZIPWINDOW function, except it also
works on windows that only have a zip gadget and don't have
sizing gadgets
Insert Text
Whenever the key sequence is entered the specified string will be
inserted instead. The string to insert is specified in the
"Command Parameters" gadget.
Run Program
Lets you run a program by hitting any key sequence. The program name
and its arguments are specified in the "Command Parameters" gadget.
Run ARexx Script
Lets you run an ARexx script by hitting any key sequence. The script
name and its arguments are specified in the "Command Parameters"
gadget. Putting quotes around the script name makes it into an
ARexx string file.
The "Command Parameters" text gadget lets you specify arguments for
three of the commands.
For example, if you wish "alt f1" to start DPaint:
- Add a new key sequence by selecting the "New Key" gadget.
- Enter the key sequence in the string gadget as "alt f1"
- Select the "Run Program" option in the Command cycle gadget
- Enter "DPaint" in the "Command Parameters" string gadget.
Given this new functinality, IHelp is now obsolete.
- The "Project/Save Defined Keys" menu option causes the currently
defined sequences to be saved in the FKey program icon. The format
for the tooltypes thus produced are for example:
<<alt f1>> RUN DPaint
where << and >> and the angled double quotes, "RUN" is the command to
perform, and "DPaint" is the argument to the command.
- Uses ReadArgs() to parse command-line options. Template is:
CX_PRIORITY/N/K,CX_POPKEY/K,CX_POPUP/K
=============================================================================
Tools/Commodities/NoCapsLock
- Localized
- Much smaller
- Uses ReadArgs() to parse command-line options. Template is:
CX_PRIORITY/N/K
=============================================================================
Tools/IconEdit
- Localized
- Added Undo Undo to match Pointer and WBPattern behavior
=============================================================================
Tools/ShowConfig
- Combined Config and ShowConfig for 68040 awareness, hopefully
clean non-identication of unknown chip revs
- Added checks for Zorro III extended size boards
and seems to report their Zorro-II size correctly
- Now reports the actual rev numbers of chips, and reports the
sizes of large boards in a more human-understandable fashion
(like 2 meg, etc.)
=============================================================================
Utilities/Display
- Localized
- Any clipboard unit ILBM can now be displayable with filename -cN where
N=clipboard unit number
- Doesn't munge display when trying to display the initial planes of a >8
plane image.
- Notifies user if it had to delve into a complex file to find the ILBM.
=============================================================================
Utilities/More
- Localized
- Fixed range check so More won't complain that character 0x9b is binary
=============================================================================
Utilities/Say
- Localized
- Now has a real GUI with gadgets to set the speech attributes and enter
the text to say
- Now uses ReadArgs(). The template is:
TEXT,FILE/K,-M=MALE/S,-F=FEMALE/S,-N=NATURAL/S,-R=ROBOTIC/S,
-P=PITCH/N/K,-S=SPEED/N/K,PUBSCREEN/K
- Tooltypes can now be specified:
MALE FEMALE NATURAL ROBOTIC PITCH SPEED PUBSCREEN
- The text input area can be cut from and pasted into.
- Selecting project icons then selecting the Say icon will now
"say" all files selected
- The Say window is an AppWindow so text files can be dumped on it directly
for speech.